﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Collections.Generic;

/// <summary>
/// Summary description for RolPaginas
/// </summary>
public class RolPaginas
{
    private string nombreRol;

	public RolPaginas()
	{
		//
		// TODO: Add constructor logic here
		//
	}

    public RolPaginas(string nombreRol)
    {this.nombreRol=nombreRol;}

    public string obtNombreRol(){return nombreRol;}

    public void asiNombreRol(string nombreRol){this.nombreRol=nombreRol;}

    public List<RolPaginas> ObtRolDePaginas()
    {
        BD bd = new BD();
        bd.AbrirConexion();
        DataTable dt = bd.Consultar("select * from RolPaginas");
        bd.CerrarConexion();

        List<RolPaginas> listcat = new List<RolPaginas>();
        int cont = 0;
        foreach (DataRow dr in dt.Rows)
        {
            RolPaginas cat = new RolPaginas(dt.Rows[cont]["nombreRol"].ToString());
            cont++;
            listcat.Add(cat);
        }
        return listcat;
    }

    public string ActualizarRol(string nuevoNombre)
    {
        if (ExisteRol())
        {
            BD bd = new BD();
            bd.AbrirConexion();
            string campoValor="nombreRol="+"'"+nuevoNombre+"'";
            string condicion = "nombreRol=" + "'" + nuevoNombre + "'";
            string actualizar = bd.Actualizar("RolPaginas", campoValor, condicion);
            bd.CerrarConexion();
            return actualizar;
        }
        return "No existe el Rol.";
    }

    public string EliminarRol()
    {
        if (ExisteRol())
        {
            BD bd = new BD();
            bd.AbrirConexion();
            string condicion="nombreRol="+"'"+nombreRol+"'";
            string eliminar = bd.Eliminar("RolPaginas", condicion);
            bd.CerrarConexion();
            return eliminar;
        }
        return "No existe el rol.";
    }

    public string GuardarRol() 
    {
        if(!ExisteRol())
        {
            BD bd = new BD();
            string campos= "(nombreRol)";
            string valores="('"+nombreRol+"')";
            bd.AbrirConexion();
            string insert = bd.Insertar("RolPaginas", campos, valores);
            bd.CerrarConexion();
            return insert;
        }
        return "ya existe el Rol";
    }

    public bool ExisteRol() 
    {
        if (nombreRol != "")
        {
            BD bd = new BD();
            bd.AbrirConexion();
            string consulta="select nombreRol from RolPaginas where nombreRol="+"'"+nombreRol+"'";
            DataTable dt = bd.Consultar(consulta);
            bd.CerrarConexion();
            if (dt.Rows.Count != 0)
                return true;
        }
        return false;
    }
}